No matter for the purpose of anti-piracy or user data protection, each type of software has some key data that needs to be protected, such as the sequence number, user name and password of the software. At present, the data protection is generally implemented through complex data conversion or through dongle of various types of hardware.
In the protection manner by using a complex algorithm, a cracker may track and recover the algorithmic logic through a software debugging technology, or directly intercept the original assembly code in the software to directly recover the data encryption process.
In the protection manner by using dongle, the cost is high and the usability is low; the computing capability of the dongle is limited, and the processing speed is low when large-volume and high-intensity encryption is implemented; the dongle product is relatively independent, and once the dongle of a certain brand is cracked (that is, the dongle is disabled), all types of software that employ the dongle of this brand are at risk; and the encryption algorithm of the dongle cannot be flexibly controlled, and cannot be flexibly changed after being selected.
Therefore, a heretofore unaddressed need exists in the art to address the aforementioned deficiencies and inadequacies.